// 余料库位前端脚本
frappe.ui.form.on('Scrap Location', {
    refresh: function(frm) {
        // 添加自定义按钮
        if (frm.doc.docstatus === 1) {
            frm.add_custom_button('查看余料', function() {
                frappe.set_route('List', 'Scrap Material', {'location': frm.doc.name});
            }, '操作');
            
            frm.add_custom_button('生成库位标签', function() {
                frappe.call({
                    method: 'scrap_management.scrap_management.doctype.scrap_location.scrap_location.generate_location_label',
                    args: {
                        docname: frm.doc.name
                    },
                    callback: function(r) {
                        if (r.message) {
                            frm.set_value('location_label', r.message);
                            frappe.show_alert({
                                message: '库位标签已生成',
                                indicator: 'green'
                            });
                        }
                    }
                });
            }, '操作');
        }
    },
    
    warehouse: function(frm) {
        // 仓库选择时的处理
        if (frm.doc.warehouse) {
            frappe.call({
                method: 'frappe.db.get_value',
                args: {
                    doctype: 'Scrap Warehouse',
                    name: frm.doc.warehouse,
                    fieldname: 'status'
                },
                callback: function(r) {
                    if (r.message && r.message.status === '已取消') {
                        frappe.msgprint({
                            title: '状态提醒',
                            message: '所选仓库状态为"已取消"，请选择其他仓库',
                            indicator: 'red'
                        });
                        frm.set_value('warehouse', '');
                    }
                }
            });
        }
    },
    
    status: function(frm) {
        // 状态变更时的处理
        if (frm.doc.status === '已停用') {
            frappe.msgprint({
                title: '状态变更提醒',
                message: '库位状态已变更为"已停用"，所有关联的可用余料将自动标记为"异常"',
                indicator: 'orange'
            });
        }
    },
    
    location_code: function(frm) {
        // 库位代码输入时的格式化
        if (frm.doc.location_code) {
            // 转换为大写
            frm.set_value('location_code', frm.doc.location_code.toUpperCase());
        }
    }
});